Loop Parallelization in the Polytope Model
نویسنده
چکیده
During the course of the last decade, a mathematical model for the parallelization of FOR-loops has become increasingly popular. In this model, a (perfect) nest of r FOR-loops is represented by a convex polytope in r . The boundaries of each loop specify the extent of the polytope in a distinct dimension. Various ways of slicing and segmenting the polytope yield a multitude of guaranteed correct mappings of the loops’ operations in space-time. These transformations have a very intuitive interpretation and can be easily quantified and automated due to their mathematical foundation in linear programming and linear algebra. With the recent availability of massively parallel computers, the idea of loop parallelization is gaining significance, since it promises execution speed-ups of orders of magnitude. The polytope model for loop parallelization has its origin in systolic design, but it applies in more general settings and methods based on it will become a part of future parallelizing compilers. This paper provides an overview and future perspective of the polytope model and methods based on it.
منابع مشابه
A loop transformation approach for combined parallelization and data transfer and storage optimization
We show a new loop transformation approach to combine parallelization and data transfer and storage optimization for embedded multimedia applications. Our methodology makes use of an extended polytope model, with an exact mathematical description of all operations and dependencies. For the data transfer and storage exploration, we use a two step approach, consisting of a polytope placement step...
متن کاملParametric Analysis of Polyhedral Iteration Spaces
In the area of automatic parallelization of programs , analyzing and transforming loop nests with parametric aane loop bounds requires fundamental mathematical results. The most common geometrical model of iteration spaces, called the polytope model, is based on mathematics dealing with convex and discrete geometry, linear programming, combinatorics and geometry of numbers. In this paper, we pr...
متن کاملIST ACOTES Project Deliverable D3.4 Task-Level Optimization Prototype
This deliverable describes the task-level optimization libraries designed for the ACOTES tool chain. Based on the polyhedral model of compilation, these libraries support automatic parallelization and adaptation of thread-level parallelism to a target. The libraries can also be applied to loop nest optimization of single-threaded code. Early experimental validation is described in the document,...
متن کاملParametric Analysis of Polyhedral Iteration
In the area of automatic parallelization of programs, analyzing and transforming loop nests with parametric aane loop bounds requires fundamental mathematical results. The most common geometrical model of iteration spaces, called the polytope model, is based on mathematics dealing with convex and discrete geometry, linear programming, combinatorics and geometry of numbers. In this paper, we pre...
متن کاملThe Loop Parallelizer LooPo
We report on a prototype for testing diierent methods of space-time mapping loop nests. LooPo admits perfect or imperfect loop nests in a number of imperative languages, takes data dependences from the user or derives them itself from the source code, provides a choice of strategies for scheduling and allocating the loop nest's iterations, and produces synchronous or asynchronous parallel targe...
متن کامل